git-buildpackage (again)
/Youhei SASAKI
2011-08-28
bg=white
Outline
1
2 upstream import ?
3 ./debian /する
4 patch ?
5 source package
6 とめ (?)
々木洋平/Youhei SASAKI | git-buildpackage (again) 2/40
bg=white
Outline
1 じめ
2 upstream import ?
3 ./debian シガ書く/正す
4 patch ?
5 source package 生成
6 とめ (?)
々木洋平/Youhei SASAKI | git-buildpackage (again) 3/40
bg=white
々木洋平/Youhei SASAKI | git-buildpackage (again) 4/40
bg=white
!!
洋平/Youhei SASAKI | git-buildpackage (again) 8/40
bg=white
下さ bzr き続 Git 使
, 続き (?)
(2011 6 , 48 ): git-buildpackage
(2011 8 , 50 ):
つかマン/ケー, れをしてたり.
洋平/Youhei SASAKI | git-buildpackage (again) 9/40
bg=white
提知
source package
Git , tag branch ついてのる程
宜質してさい
日の
をしいる/でき/
source format 3.0 (quilt)
洋平/Youhei SASAKI | git-buildpackage (again) 10/40
bg=white
()
常、
1 upstream
2 (合に) non-free 除いりし
3 ./debian /
4 合に upstream にパ当て
5 ース/イナ
いうを行いま
洋平/Youhei SASAKI | git-buildpackage (again) 11/40
bg=white
, Git , というと
$ git branch
* master <-- debian/ りのルソ
pristine-tar <-- orig.tar.{gz,bz2}
upstream <-- debian/ (upstream) ース
いう成のポジリ内.
洋平/Youhei SASAKI | git-buildpackage (again) 12/40
bg=white
Git Debian ?
下の
git-buildpackage
git-dpm
gitpkg
topgit
ます
vcs-buildpackage と同じ様使う git-buildpackage 使
洋平/Youhei SASAKI | git-buildpackage (again) 13/40
bg=white
Outline
1 じめ
2 upstream import ?
3 ./debian シガシ書/修正
4 patch ?
5 source package 生成
6 とめ (?)
洋平/Youhei SASAKI | git-buildpackage (again) 14/40
bg=white
upstream import ?
存の source package import
$ git-import-dsc [some dsc files]
, upstream tarball VCS ?
洋平/Youhei SASAKI | git-buildpackage (again) 15/40
bg=white
upstream import ?
simple
tarball import
or
upstream VCS import
調整が要な
non-dfsg-free 分を import
をつる必があのは
確な tarball copy : pristine-tar
洋平/Youhei SASAKI | git-buildpackage (again) 16/40
bg=white
pristine-tar ?
upstream tarball import バイリデ
upstream ンチ tarball(.orig.tar.gz) するに、
checksum tarball
イナデル pristine-tar ブラ.
import . . .
$ pristine-tar commit foobar.tar.gz [upstream-ref]
$ pristine-tar checkout ../foobar.tar.gz
く稀駄目 tarball があ (らし) , 動作
木洋/Youhei SASAKI | git-buildpackage (again) 17/40
bg=white
upstream VCS import
tarball 一緒 import !!
定の branch upstream ト履歴を import
Top tarball import
import diff 理さ
quilt !!
import らタグを
git-buildpackage 便
木洋/Youhei SASAKI | git-buildpackage (again) 18/40
bg=white
upstream VCS import (1)
運に upstream Git
$ git remote add upstream-repos [url]
$ git fetch upstream-repos
$ git co upstream && git merge [upstream tag]
ok
木洋/Youhei SASAKI | git-buildpackage (again) 19/40
bg=white
upstream VCS import (2)
Subversion:
$ git-svn init [url]
$ git svn fetch
$ git log ref/remotes/git-svn
$ git checkout -b upstream refs/remotes/git-svn
$ git push origin upstream:upstream
Subversion: 以降
$ git config --remove-section svn-remote.svn 1>/dev/null 2>&1
$ git svn init [url]
$ git show-ref origin/upstream > \
‘git rev-parse-git-dir‘/refs/remotes/git-svn
. . . . . .
木洋/Youhei SASAKI | git-buildpackage (again) 20/40
bg=white
tarball import (1)
git-import-orig
git-buildpackage
simple tarball import
(Option けれ) pristine-tar
(れば) master merge
グもくれ
要なは全てく, で十分なが多
木洋/Youhei SASAKI | git-buildpackage (again) 21/40
bg=white
tarball import (2)
git-dpm import-new-upstream
git-dpm: git Debian package manager ージ提供
作は git-import-orig
manager ,
VCS
patch-queue ラン (後述) /,
木洋/Youhei SASAKI | git-buildpackage (again) 22/40
bg=white
調 (1)
upstream non-dfsg-free な部を削/調
new upstream version merge/commit
tarball repack した import/
$ git checkout upstream
$ git merge -s recursive -X theirs [upstream tag]
しく
$ git status -s | egrep ’^(DU|UA| U|UD)’ | cut -c4- | \
xargs git rm --ignore-unmatch DUMMY$$
$ git commit
?
木洋/Youhei SASAKI | git-buildpackage (again) 23/40
bg=white
調 (2)
tarball / tarball , import , でも良い
uscan repack , script , tarball から
import, .
木洋/Youhei SASAKI | git-buildpackage (again) 24/40
bg=white
Outline
1 じめ
2 upstream import ?
3 ./debian シガシ書/修正
4 patch ?
5 source package 生成
6 とめ (?)
木洋/Youhei SASAKI | git-buildpackage (again) 25/40
bg=white
./debian /
$ git branch
* master <-- debian/ りのルソ
pristine-tar <-- orig.tar.{gz,bz2}
upstream <-- debian/ (upstream) ース
upstream Git
upstream
./debian の変 master チで
ての更は master
をしのか git log
patch
木洋/Youhei SASAKI | git-buildpackage (again) 26/40
bg=white
Outline
1 じめ
2 upstream import ?
3 ./debian シガシ書/修正
4 patch ?
5 source package 生成
6 とめ (?)
木洋/Youhei SASAKI | git-buildpackage (again) 27/40
bg=white
source format 3.0 (quilt)
source format 3.0 (quilt)
upstream quilt ./debian/patches 格納
VCS /?
木洋/Youhei SASAKI | git-buildpackage (again) 28/40
bg=white
Git quilt .
雑なは何ない
に得るこも無けれ
木洋/Youhei SASAKI | git-buildpackage (again) 29/40
bg=white
git 使 (1)
quilt git けで
master ,
upstream チとの差
patch debian/patches
れら master
dpkg-source apply/unpatch れる
更点 track
VCS くな
木洋/Youhei SASAKI | git-buildpackage (again) 30/40
bg=white
patch
track branch
patch-queue
master ./debian
ースの変点は途ブンチ作成
1 /1 or 1 /1
track ンチの内 quilt export
export patch master 込む
quilt export を行ト履歴が
1 /1
squash !! squash !! squash !!
のと 1-way rebase
木洋/Youhei SASAKI | git-buildpackage (again) 31/40
bg=white
patch Git
topgit: a Git patch queue manager
ト履
便利だ, ぎな気もない
patch-queue ラン quilt export master
コミ要がある
木洋/Youhei SASAKI | git-buildpackage (again) 32/40
bg=white
patch-queue master (1)
git-dpm 自動に行われ
gitpkg, gbp-pq:
git merge wrapper
dpkg-source 自動 patch を生/適応
source format 3.0 (quilt)
木洋/Youhei SASAKI | git-buildpackage (again) 33/40
bg=white
patch-queue master (2)
gbp-pq
git-buildpackage
git format-patch wrapper
1 /1 , patch /取り
master rebase
$ git checkout master ; git branch -D patch-queue
$ quilt pop -a
$ gbp-pq import
... ...
$ git checkout master ; gbp-pq export
木洋/Youhei SASAKI | git-buildpackage (again) 34/40
bg=white
patch-queue master (3)
git-dpm patch り扱
1 /1
master チに merge で管
upstream ンチ rebase
ライートラン SHA1 ./debian/.git-dpm
木洋/Youhei SASAKI | git-buildpackage (again) 35/40
bg=white
patch-queue master (4)
gitpkg quilt export hook
1 /1 ,
debian/source/git-patches 設定
upstream/[UPSTREAM_REF]...patche-queue1/[DEBIAN_REF1]
upstream/[UPSTREAM_REF2]...topic1/[DEBIAN_REF2]
tag
木洋/Youhei SASAKI | git-buildpackage (again) 36/40
bg=white
Outline
1 じめ
2 upstream import ?
3 ./debian シガシ書/修正
4 patch ?
5 source package 生成
6 とめ (?)
木洋/Youhei SASAKI | git-buildpackage (again) 37/40
bg=white
source package
git-dpm
ルドの特のコンド (dpkg-source -b )
gitpkg
pristine-tar, upstream チか tarball を生成し source package
git-buildpackage
default. イナケーも作する
git-pbuilder: pbuilder/cowbuilder び出
グを.
木洋/Youhei SASAKI | git-buildpackage (again) 38/40
bg=white
Outline
1 じめ
2 upstream import ?
3 ./debian シガシ書/修正
4 patch ?
5 source package 生成
6 とめ (?)
木洋/Youhei SASAKI | git-buildpackage (again) 39/40
bg=white
. . .
git-buildpackage /便/スト低い
に幾かの project Git
workflow わかやす
git-dpm/gitpkg
workflow/patch-queue 自由は高 (けれ, がち)
git-dpm
マンが多くて, ()
git らし」作でき (らし)
gitpkg
hook /.
ポジリのレイウト固定れていな
木洋/Youhei SASAKI | git-buildpackage (again) 40/40